home *** CD-ROM | disk | FTP | other *** search
/ Amiga Collections: Taifun / Taifun 099 (1989-05-15)(Ossowski, Stefan)(DE)(PD).zip / Taifun 099 (1989-05-15)(Ossowski, Stefan)(DE)(PD).adf / PCQ / Include / Intuition.i < prev    next >
Text File  |  1989-03-31  |  5KB  |  190 lines

  1.  
  2. {
  3.     This is some of the information you'll need to work with
  4. Intuition from PCQ.  I included most of the easy stuff having to do with
  5. windows and screens, but there is a lot more to go.  By the time you are
  6. reading this I have no doubt written a bit more, and if you call or
  7. write I'll get it to you.  If you know how to do this stuff I could also
  8. just send you the source for the run time library and you could add
  9. whatever you need.
  10.     While we're at it, I'll mention that you do not need to open the
  11. Intuition library yourself.  The startup code needs the library and
  12. opens it, so these routines use that pointer.
  13. }
  14.  
  15. const
  16.     SIZEVERIFY_f    = $0001;    { As the tag _f would incdicate,  }
  17.     NEWSIZE_f        = $0002;    { These are some of the Intuition }
  18.     REFRESHWINDOW_f    = $0004;    { flags.  I apologise for having  }
  19.     MOUSEBUTTONS_f    = $0008;    { to include that inconvenient    }
  20.     MOUSEMOVE_f        = $0010;    { little tag, but otherwise these }
  21.     GADGETDOWN_f    = $0020;    { get confused with Procedure and }
  22.     GADGETUP_f        = $0040;    { Function names.          }
  23.     REQSET_f        = $0080;
  24.     MENUPICK_f        = $0100;
  25.     CLOSEWINDOW_f    = $0200;
  26.     RAWKEY_f        = $0400;
  27.     REQVERIFY_f        = $0800;
  28.     REQCLEAR_f        = $1000;
  29.     MENUVERIFY_f    = $2000;
  30.     NEWPREFS_f        = $4000;
  31.     DISKINSERTED_f    = $8000;
  32.     DISKREMOVED_f    = $10000;
  33.     WBENCHMESSAGE_f    = $20000;
  34.     ACTIVEWINDOW_f    = $40000;
  35.     INACTIVEWINDOW_f    = $80000;
  36.     DELTAMOVE_f        = $100000;
  37.     VANILLAKEYS_f    = $200000;
  38.     INTUITICKS_f    = $400000;
  39.     LONELYMESSAGE_f    = $80000000;
  40.  
  41.     WBENCHSCREEN_f    = 1;
  42.     CUSTOMSCREEN_f    = 15;
  43.  
  44.     WINDOWSIZING_f    = $0001;
  45.     WINDOWDRAG_f    = $0002;
  46.     WINDOWDEPTH_f    = $0004;
  47.     WINDOWCLOSE_f    = $0008;
  48.     SIZEBRIGHT_f    = $0010;
  49.     SIZEBBOTTOM_f    = $0020;
  50.     SMART_REFRESH_f    = 0;
  51.     SIMPLE_REFRESH_f    = $0040;
  52.     SUPER_BITMAP_f    = $0080;
  53.     OTHER_REFRESH_f    = $00c0;
  54.     BACKDROP_f        = $0100;
  55.     REPORTMOUSE_f    = $0200;
  56.     GIMMEZEROZERO_f    = $0400;
  57.     BORDERLESS_f    = $0800;
  58.     ACTIVATE_f        = $1000;
  59.  
  60. type
  61.  
  62.     NewScreen = record
  63.     LeftEdge,
  64.     TopEdge,
  65.     Width,
  66.     Height,
  67.     Depth    : Short;
  68.     DetailPen,
  69.     BlockPen : Byte;
  70.     ViewModes : Short;
  71.     SType      : Short;    { Normally this is called 'Type', but }
  72.     Font      : Address;    { since that's a reserved word I had  }
  73.     DefaultTitle : String;    { change it                  }
  74.     Gadgets      : Address;
  75.     CustomBitMap : Address;
  76.     end;
  77.     NewScreenPtr = ^NewScreen;
  78.     ScreenPtr = Address;
  79.  
  80.     NewWindow = record
  81.     LeftEdge,
  82.     TopEdge,
  83.     Width,
  84.     Height        : Short;
  85.     DetailPen,
  86.     BlockPen    : Byte;
  87.     IDCMPFlags    : Integer;
  88.     Flags        : Integer;
  89.     FirstGadget    : Address;
  90.     CheckMark    : Address;
  91.     Title        : String;
  92.     Screen        : ScreenPtr;
  93.     BitMap        : Address;
  94.     MinWidth,
  95.     MinHeight,
  96.     MaxWidth,
  97.     MaxHeight    : Short;
  98.     WType        : Short; { This also had to be changed }
  99.     end;
  100.     NewWindowPtr = ^NewWindow;
  101.  
  102.     Window = record
  103.     NextWindow    : ^Window;
  104.     LeftEdge,
  105.     TopEdge,
  106.     Width,
  107.     Height        : Short;
  108.     MouseY,
  109.     MouseX        : Short;
  110.     MinWidth,
  111.     MinHeight,
  112.     MaxWidth,
  113.     MaxHeight    : Short;
  114.     Flags        : Integer;
  115.     MenuStrip    : Address;
  116.     Title        : String;
  117.     FirstRequest    : Address;
  118.     DMRequest    : Address;
  119.     ReqCount    : Short;
  120.     WScreen        : ScreenPtr;
  121.     RPort        : Address;
  122.     BorderLeft,
  123.     BorderTop,
  124.     BorderRight,
  125.     BorderBottom    : Byte;
  126.     BorderRPort    : Address;
  127.     FirstGadget    : Address;
  128.     Parent,
  129.     Descendant    : ^Window;
  130.     Pointer        : Address;
  131.     PtrHeight,
  132.     PtrWidth    : Byte;
  133.     XOffset,
  134.     YOffset        : Byte;
  135.     IDCMPFlags    : Integer;
  136.     UserPort,
  137.     WindowPort    : Address;
  138.     MessageKey    : Address;
  139.     DetailPen,
  140.     BlockPen    : Byte;
  141.     CheckMark    : Address;
  142.     ScreenTitle    : String;
  143.     GZZMouseX,
  144.     GZZMouseY,
  145.     GZZWidth,
  146.     GZZHeight    : Short;
  147.     ExtData        : Address;
  148.     UserData    : Integer;
  149.     WLayer        : Address
  150.     end;
  151.     WindowPtr = ^Window;
  152.  
  153.  
  154. Function OpenWindow(nw : NewWindowPtr): WindowPtr;
  155.     forward;
  156. Procedure CloseWindow(w : WindowPtr);
  157.     forward;
  158. Function OpenScreen(ns : NewScreenPtr): ScreenPtr;
  159.     forward;
  160. Procedure CloseScreen(s : ScreenPtr);
  161.     forward;
  162. Procedure CurrentTime(var s, m : Integer);
  163.     forward;
  164. { Note the use of VAR above to do the same work as the & (address)
  165.   prefix in C. }
  166. Procedure MoveScreen(s : ScreenPtr; x, y : Integer);
  167.     forward;
  168. Procedure MoveWindow(w : WindowPtr; x, y : Integer);
  169.     forward;
  170. Procedure ScreenToBack(s : ScreenPtr);
  171.     forward;
  172. Procedure ScreenToFront(s : ScreenPtr);
  173.     forward;
  174. Procedure SetWindowTitles(w : WindowPtr; t, s : String);
  175.     forward;
  176. Procedure ShowTitle(s : ScreenPtr; b : Boolean);
  177.     forward;
  178. Procedure SizeWindow(w : WindowPtr; x, y : Integer);
  179.     forward;
  180. Function ViewPortAddress(w : WindowPtr): Address;
  181.     forward;
  182. Procedure WBenchToBack;
  183.     forward;
  184. Procedure WBenchToFront;
  185.     forward;
  186. Procedure WindowToBack(w : WindowPtr);
  187.     forward;
  188. Procedure WindowToFront(w : WindowPtr);
  189.     forward;
  190.